package pl.smath.expression;


public class Term {

	private String	text;
	private boolean negative = false;
	
	
	/**
	 * Konstruktor
	 * @param text
	 */
	public Term(String text){
		this.text = text;
	}
	
	
	/**
	 * @return tekst wyrażenia
	 */
	public Term copy(){
		Term term = new Term(text);
		
		term.setNegative(negative);
		return term;
	}


	/**
	 * @return tekst wyrażenia
	 */
	public String getText(){
		return text;
	}


	/**
	 * Pobranie minusa przed wyrazeniem
	 */
	public boolean isNegative() {
		return negative;
	}
	
	
	/**
	 * Sprawdzenie czy 2 wyrazenia sa sobie równowazne.
	 * Czyli czy mozna postawic miedzy nimi znak = (w sensie matematycznym)
	 * Np. ponizesze wyrazenia sa rownowazne
	 * c*(a+b) i (b+a)*c
	 */
	public boolean isTheSame(Term term){
		return false;
	}
	
	
	/**
	 * Ustawienie znaku minus w wyrazeniu
	 * @param b
	 */
	public void setNegative(boolean b) {
		negative = b;
	}
	
	/**
	 * Zamiana po stringa
	 * @return
	 */
	public String toString(){
		
		String output = "";
		
		if(negative)
			output = "-";
		
		output += text;
		return output;
	}


}
